package com.example.onlineeducation.net

import com.google.gson.annotations.SerializedName

data class HttpVersionResponse<T>(
    @SerializedName("message") var message: String?,//描述信息
    @SerializedName("code") var code: Int,//状态码
    @SerializedName("data") var data: T?,//数据对象[成功返回对象,失败返回错误说明]
)


/**
 * 请求的返回数据（通用的）
 */
data class HttpResponse<T>(
    @SerializedName("message") var message: String?,//描述信息
    @SerializedName("code") var code: Int,//状态码
    @SerializedName("result") var data: T?,//数据对象[成功返回对象,失败返回错误说明]
)

/**
 * 请求的返回数据(有分页的)
 * @property totalNum Int 数据总数（不是总页数）
 * @property data List<T>?
 */
data class HttpResponsePageList<T>(
    @SerializedName("code") val code: Int,
    @SerializedName("message") val message: String?,
    @SerializedName("result") val result: Results<T>?,
)


/**
 * 列表
 */
data class Results<T>(
    @SerializedName("records") val dataList: List<T>?,//List数据
//    @SerializedName("total") val totalData: Int,//数据总数
//    @SerializedName("size") var perPageSize: Int,//每页几条数据量
//    @SerializedName("current") var currentPage: Int,//当前页
    @SerializedName("pages") val totalPage: Int?,//总页数
)



data class HttpResponseList<T>(
    @SerializedName("code") val code: Int,
    @SerializedName("success") val success: Boolean,
    @SerializedName("message") val message: String?,
    @SerializedName("result") val dataList: List<T>?,
)


